package com.piesat.quake.business.device.service;

import com.piesat.quake.business.device.model.ConfigurationUpdate;
import com.piesat.quake.business.device.model.DeviceConfigVO;
import com.piesat.quake.business.device.model.DeviceUpdate;
import com.piesat.quake.business.device.model.RealtimeControl;

import java.util.List;

/**
 * @author Gersy
 * @date 2023/2/13
 * @since 1.0
 */
public interface DeviceService {
    void getConfig(String id);

    void getFeatureData(String id, long timestamp);

    void upgradeDevice(List<String> ids);

    void updateConfig(ConfigurationUpdate configurationUpdate);

    DeviceConfigVO getDeviceConfig(String id);

    DeviceConfigVO getRegionDeviceConfig(String regionCode);

    void getDeviceLog(String id, Byte type);

    void deviceUpdate(DeviceUpdate deviceUpdate);

    void realtimeControl(RealtimeControl realtimeControl);
}
